//package com.woniuxy02;
//
//
//import java.io.*;
//import java.util.ArrayList;
//import java.util.Arrays;
//import java.util.List;
//import java.util.Scanner;
//
//public class Test01 {
//
//    static String path="students.txt";
//    static Scanner scanner =new Scanner(System.in);
//
//    public static void main(String[] args) throws IOException {
//        boolean flag=true;
//        while (flag) {
//            System.out.println("欢迎进入系统,选择你要执行的操作");
//            System.out.println("1.添加学生");
//            System.out.println("2.查询所有学生");
//            System.out.println("3.删除学生");
//            System.out.println("4.修改学生");
//            System.out.println("5.根据名字查询");
//            System.out.println("6.退出系统");
//            int choice=scanner.nextInt();
//            switch (choice){
//                case 1:
//                    testaddStudent();
//                    break;
//                case 2:
//                    testgetAllStudents();
//                    break;
//                case 3:
//                    testremoveStudent();
//                    break;
//                case 4:
//                    testmodifyStudent();
//                    break;
//                case 5:
//                    testgetStudentsBySname();
//                    break;
//                case 6:
//                    System.out.println("退出系统");
//                    flag=false;
//                    break;
//                default:
//                    System.out.println("输入错误，重新选择");
//                    break;
//            }
//        }
//    }
//
//    private static void testgetStudentsBySname() throws IOException {
//        System.out.println("输入学生姓名");
//        String sname = scanner.next();
//        getStudentsBySname(sname).forEach(System.out::println);
//
//    }
//
//    private static List<Student> getStudentsBySname(String sname) throws IOException {
//        List<Student> students=new ArrayList<>();
//        BufferedReader br=new BufferedReader(new FileReader(path));
//        String line;
//        while((line=br.readLine())!=null){
//            String[] properties = line.split("-");
//            if (properties[1].contains(sname)) {
//                students.add(new Student(Integer.parseInt(properties[0]),
//                        properties[1],
//                        Integer.parseInt(properties[2])));
//            }
//        }
//        br.close();
//        return students;
//    }
//
//    private static void testmodifyStudent() throws IOException {
//        Student student=new Student();
//        System.out.println("输入学生学号");
//        student.setSid(scanner.nextInt());
//        System.out.println("输入学生姓名");
//        student.setSname(scanner.next());
//        System.out.println("输入学生年龄");
//        student.setAge(scanner.nextInt());
//        modifyStudent(student);
//    }
//
//
//    //修改学生
//    public static void modifyStudent(Student student) throws IOException {
//        List<Student> students = getAllStudents();
//        boolean flag=false;
//        for(int i=0;i<students.size();i++){
//            if(students.get(i).getSid().equals(student.getSid())){
//                students.set(i,student);
//                flag=true;
//                break;
//            }
//        }
//        if(flag){
//            addStudents(students);
//        }
//
//    }
//    public static void testremoveStudent() throws IOException{
//        System.out.println("输入你要删除的学生的学号");
//        int sid=scanner.nextInt();
//        removeStudent(sid);
//    }
//
//    //删除学生
//    public static void removeStudent(int sid) throws IOException{
//        //读取文件的所有学生，存储集合，删掉集合中的元素，再将这个集合中的元素重新写入文件（覆盖）
//        List<Student> students = getAllStudents();
//
//        List<Student> list = students.stream()
//                .filter(student -> !student.getSid().equals(sid)).toList();
//
//        if (students.size()!=list.size()) {
//            addStudents(list);
//        }
//    }
////    public static void removeStudent(int sid) throws IOException{
////        //读取文件的所有学生，存储集合，删掉集合中的元素，再将这个集合中的元素重新写入文件（覆盖）
////        List<Student> students = getAllStudents();
////        //表示不存在要删除的学号
////        boolean flag=false;
////        for(int i=0;i<students.size();i++){
////            if(students.get(i).getSid().equals(sid)){
////                students.remove(i);
////                flag=true;
////                break;
////            }
////        }
////        if (flag) {
////            addStudents(students);
////        }
////    }
//
//
//    public static void testgetAllStudents() throws IOException {
//        getAllStudents().forEach(System.out::println);
//    }
//
//    //读取文件中存储的所有学生
//    private static List<Student> getAllStudents() throws IOException {
//        //输入流，读文件，读取一行数据，拆分属性：将字符串拆除字符串数组，创建对象，添加集合中
//        List<Student> students=new ArrayList<>();
//        BufferedReader br=new BufferedReader(new FileReader(path));
//        String line;
//        while((line=br.readLine())!=null){
//            String[] properties = line.split("-");
//            students.add(new Student(Integer.parseInt(properties[0]),
//                    properties[1],
//                    Integer.parseInt(properties[2])));
//        }
//        br.close();
//        return students;
//    }
//
//    private static void testaddStudent() throws IOException {
//        Student student=new Student();
//        System.out.println("输入学生学号");
//        student.setSid(scanner.nextInt());
//        System.out.println("输入学生姓名");
//        student.setSname(scanner.next());
//        System.out.println("输入学生年龄");
//        student.setAge(scanner.nextInt());
//        addStudent(student);
//    }
//
//    //添加学生，学生数据存储到文件中,每一行存储一个学生对象，属性间使用-做分割:sid-sname-age
//    public static void addStudent(Student student) throws IOException {
//        BufferedWriter bw=new BufferedWriter(new FileWriter(path,true));
//        bw.write(student.getSid()+"-");
//        bw.write(student.getSname()+"-");
//        bw.write(student.getAge()+"");
//        bw.newLine();
//        bw.flush();
//        bw.close();
//    }
//
//    public static void addStudents(List<Student> students) throws IOException {
//        BufferedWriter bw=new BufferedWriter(new FileWriter(path));
//        for (Student student :students) {
//            bw.write(student.getSid()+"-");
//            bw.write(student.getSname()+"-");
//            bw.write(student.getAge()+"");
//            bw.newLine();
//            bw.flush();
//        }
//        bw.close();
//    }
//}
